﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using Upeu.Venta.Api.Models;
using Upeu.Venta.Data.Business;
using Upeu.Venta.Data.Entities;

namespace Upeu.Venta.Api.Controllers
{
    public class ComprasController : ApiController
    {
        // GET api/<controller>
        public IEnumerable<ComprasModel> Get()
        {
            //return new string[] { "value1", "value2" };
            return ComprasBusiness.GetListByFilter("").Select(
                t => new ComprasModel
                {
                    Id = t.Id,
                    Serie = t.Serie,
                    NumDoc = t.NumDoc,
                    FechaRegistro = t.FechaRegistro,
                    FechaCompra = t.FechaCompra,
                    
                    
                });
        }

        // GET api/<controller>/5
        public ComprasModel Get(Guid id)
        {
            Compras t = ComprasBusiness.GetById(id);
            return new ComprasModel
            {
                Id = t.Id,
                Serie = t.Serie,
                NumDoc = t.NumDoc,
                FechaRegistro = t.FechaRegistro,
                FechaCompra = t.FechaCompra,
            };
        }

        // POST api/<controller>
        public ComprasModel Post([FromBody]ComprasModel model)
        {
            Compras t = ComprasBusiness.Create(new Compras
            {
                Serie = model.Serie,
                NumDoc = model.NumDoc,
                FechaRegistro = model.FechaRegistro,
                FechaCompra = model.FechaCompra,
            });
            return new ComprasModel
            {
                Id = t.Id,
                Serie = t.Serie,
                NumDoc = t.NumDoc,
                FechaRegistro = t.FechaRegistro,
                FechaCompra = t.FechaCompra,
            };
        }

        // PUT api/<controller>/5
        public ComprasModel Put(Guid id, [FromBody]ComprasModel model)
        {
            Compras t = ComprasBusiness.Update(new Compras
            {
                Id = id,
                Serie = model.Serie,
                NumDoc = model.NumDoc,
                FechaRegistro = model.FechaRegistro,
                FechaCompra = model.FechaCompra,
            });
            return new ComprasModel
            {
                Id = t.Id,
                Serie = t.Serie,
                NumDoc = t.NumDoc,
                FechaRegistro = t.FechaRegistro,
                FechaCompra = t.FechaCompra,
            };
        }

        // DELETE api/<controller>/5
        public void Delete(Guid id)
        {
            ComprasBusiness.Delete(id);
        }
    }
}